// 没有参数的箭头函数
const func1 = () => {
    console.log("这是一个没有参数的函数。");
};

// 单个参数的箭头函数
const func2 = (param) => {
    console.log("接收到的参数：", param);
};

// 多个参数的箭头函数
const func3 = (param1, param2) => {
    console.log("接收到的参数：", param1, param2);
};

// 如果函数体只有一条语句，可以省略大括号和 return 关键字
const func4 = () => "这是一个简单的表达式。";

// 如果函数返回一个对象需要一个小括号
const func5 =(name, age) => ({
    name: name,
    age: age
})

// 箭头函数可以直接作为函数参数传递
const greet = (greetingFunction) => {
    console.log("问候前");
    greetingFunction();
    console.log("问候后");
};

// 调用没有参数的箭头函数
func1(); // 输出：这是一个没有参数的函数。

// 调用单个参数的箭头函数
func2("Hello"); // 输出：接收到的参数： Hello

// 调用多个参数的箭头函数
func3("Hello", "World"); // 输出：接收到的参数： Hello World


func4(); // 返回：这是一个简单的表达式。

console.log(func5("John", 30))// 返回：{ name: 'John', age: 30 }

// 调用如果函数体只有一条语句，可以省略大括号和 return 关键字的箭头函数
console.log(func4()); // 输出：这是一个简单的表达式。

// 调用将箭头函数作为函数参数传递的示例
greet(() => {
    console.log("你好，世界！");
});

/*
输出：
问候前
你好，世界！
问候后
*/
